package cc.fine.svc.main.service;

import cc.fine.svc.main.bean.po.RelUserVideoHistory;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author wyihe
 * @since 2023-10-28
 */
public interface RelUserVideoHistoryService extends IService<RelUserVideoHistory> {


    /**
     * 存储用户的播放记录
     * 是一个 List<VideoId> 数组
     */
    String History_Record_map = "history::record::map";

    /**
     * 用户观看视频
     * 需要添加历史记录(同一个用户重复播放的话，更新播放时间)
     *  视频播放量+1
     * @param history
     */
    void view(RelUserVideoHistory history);

    /**
     * 按历史日期获取历史记录
     * @param userId
     * @param startTime
     * @param endTime
     * @return
     */
    List<Map<String, Object>> historyVideo(String userId, Date startTime, Date endTime);


    /**
     * 按日期获取历史看的视频id
     */
    List<String> getHistoryVideoIds(String userId, Date startTime, Date endTime);
}
